package com.jiuxian.scheduling.config;


import com.jiuxian.scheduling.vo.SchedingVO;

import java.util.List;

/**
 * Created by wangjingqing on 2017/11/9.
 */
public interface ConfigServer {

    /**
     * 添加配置
     * @param schedingVO
     * @return String
     */
    String add(SchedingVO schedingVO);

    /**
     * 更新配置
     * @param schedingVO
     * @return Boolean
     */
    Boolean update(SchedingVO schedingVO);

    /**
     * 判断是否存在
     * @param name 名称
     * @return Boolean
     */
    Boolean exist(String name);

    /**
     * 获取数据信息<br>
     * @param name 名称
     * @return SchedingVO
     */
    SchedingVO get(String name);

    /**
     * 根据名称删除<br>
     * @param name 名称
     * @return Boolean
     */
    Boolean delete(String name);

    /**
     * 获取所有名称<br>
     * @return List<SchedingVO>
     */
    List<SchedingVO> getAll();

    /**
     *  节点增加监听事件<br>
     * @param names 节点名称
     */
    void addNodeListener(List<String> names);
}
